package com.gubei.subject.domain.service;

import com.gubei.subject.domain.entity.SubjectCategoryBO;
import com.gubei.subject.infra.basic.entity.SubjectCategory;

import java.util.List;


public interface SubjectCategoryDomainService {
    /**
     * 分類の追加
     * @param subjectCategoryBO
     * @return boolean 追加成功かどうか
     */
    boolean add(SubjectCategoryBO subjectCategoryBO);

    /**
     * 職位大分類のクエリ
     * @param subjectCategoryBO
     * @return 大分類のリスト
     */
    List<SubjectCategoryBO> queryCategory(SubjectCategoryBO subjectCategoryBO);

    /**
     * 分類の更新
     * @param subjectCategoryBO
     * @return boolean 更新成功かどうか
     */
    Boolean update(SubjectCategoryBO subjectCategoryBO);

    /**
     * 分類の削除
     * @param subjectCategoryBO
     * @return boolean 削除成功かどうか
     */
    Boolean delete(SubjectCategoryBO subjectCategoryBO);

    /**
     * 分類とラベルのクエリ
     * @param subjectCategoryBO
     * @return 分類とラベルのリスト
     */
    List<SubjectCategoryBO> queryCategoryAndLabel(SubjectCategoryBO subjectCategoryBO);
}
